package cn.itcast.erp.dao.mapper;

import cn.itcast.erp.entity.Emp;
import cn.itcast.erp.entity.EmpRole;
import cn.itcast.erp.entity.Role;
import cn.itcast.erp.entity.RoleMenus;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface RoleMapper {

    // 角色数量
    int count();

    // 按条件查询
    List<Role> findRole(Role role);

    // 不分页 查所有
    List<Role> findRoleAll(Role role);

    // 修改角色名
    int updateRole(Role role);

    // 删除角色
    int deleteRole(Role role);

    // 增加角色
    int insertRole(Role role);

    //查询by id
    Role findRoleById(Long uuid);

    // 查询用户角色设置
    List<String> searchEmpRoleSeting(Long uuid);

    // 更新用户角色(删除 + 增加)
    int deleteEmpRole(Long uuid);
    int insertEmpRole(@Param("empuuid")Long empuuid, @Param("roleuuid")Long roleuuid);
    int insertEmpRoleTwo(List<EmpRole> empRoleList);

    // 更新角色权限(删除 + 增加)
    int deleteRoleMenus(Long uuid);
    int insertRoleMenus(@Param("roleuuid")Long roleuuid, @Param("menuuuid")String empuuid);
    int insertRoleMenusTwo(List<RoleMenus> roleMenusList);

    // 查询用户角色的邮箱
    List<Emp> selectEmail(String name);

    //导入Excel
    List<Role> getAllRoleEx();
}
